// 短连接协议，接受连接之后，以二进制形式发送当前时间，然后主动断开连接。
// 二进制是一个 32-bit 整数，表示至 1970-01-01 00:00:00 以来的秒数。
#ifndef MUDUO_EXAMPLES_SIMPLE_TIME_TIME_H
#define MUDUO_EXAMPLES_SIMPLE_TIME_TIME_H
#include <muduo/net/TcpServer.h>

// RFC 868
class TimeServer {
public:
	TimeServer(muduo::net::EventLoop *loop, const muduo::net::InetAddress &listenAddr);
	void Start();

private:
	void OnConnection(const muduo::net::TcpConnectionPtr &conn);
	void OnMessage(const muduo::net::TcpConnectionPtr &conn,
		           muduo::net::Buffer *buf,
		           muduo::Timestamp time);

	muduo::net::TcpServer server_;
};

#endif // MUDUO_EXAMPLES_SIMPLE_TIME_TIME_H
